package com.algorithm.sort;

/**
 * @program: 选择排序
 * @author: luhd
 * @create: 2021-08-09
 */
public class SelectSorting {
    public static void main(String[] args) {
        /**
         * 在未排序序列中找到最小的或最大的放在序列的最前面或者最后面
         */
        int [] arr = {15,5,3,7,9,2,18,10};
        selectionSort(arr);
    }
    public static void selectionSort(int[] arr){
        int len = arr.length;
        for (int i = 0; i < len - 1; i++) {     //把最小的数拎出来放到最前面，递归到最后
            for (int j = i+1; j < len; j++) {
                if(arr[j]<arr[i]){
                    int min = arr[j]; //最小的值
                    arr[j] = arr[i];    //i这个数组下标正好是每次循环的 序列最前面的数组下标
                    arr[i] = min;
                }
            }
        }
        for (int i = 0; i < len; i++) {
            System.out.print(arr[i]+" ");
        }
    }
}
